/**
 * Copyright© 2003-2019 浙江汇信科技有限公司, All Rights Reserved. <br/>
 */
package com.icinfo.cloud.provider.punish.ucase.casemain.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 描述: 案件案由记录表 case_reason_main_record 对应的实体类.<br>
 * WARNING：不是表中字段的属性必须加@Transient注解
 * @author framework generator
 * @date 2022年02月22日
 */
@Data
@Table(name = "upcase.case_reason_main_record")
public class CaseReasonMainRecord implements Serializable {
    @Id
    @Column(name = "id")
    private String id;

    /**
     * 案件id
     */
    @Column(name = "case_id")
    private String caseId;

    /**
     * 案由编码
     */
    @Column(name = "case_reason_code")
    private String caseReasonCode;

    /**
     * 案由名称
     */
    @Column(name = "case_reason_name")
    private String caseReasonName;

    /**
     * 事项编码
     */
    @Column(name = "item_version_code")
    private String itemVersionCode;

    /**
     * 领域编码
     */
    @Column(name = "territory_code")
    private String territoryCode;

    /**
     * 违则
     */
    @Column(name = "illegal_basis")
    private String illegalBasis;

    /**
     * 违则详情
     */
    @Column(name = "illegal_detail")
    private String illegalDetail;

    /**
     * 罚则
     */
    @Column(name = "punish_basis")
    private String punishBasis;

    /**
     * 罚则详情
     */
    @Column(name = "punish_detail")
    private String punishDetail;

    /**
     * 添加时间
     */
    @Column(name = "create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime createTime;

    /**
     * 案由编码id，关联违则罚则
     */
    @Column(name = "case_reason_nodeid")
    private String caseReasonNodeid;
    /**
     * 状态；1 有效 ，0无效
     */
    @Column(name = "status")
    private String status;
    private static final long serialVersionUID = 1L;

    /**
     * 认领id
     */
    @Column(name = "claim_id")
    private String claimId;


    /**
     * 案由简称
     */
    @Column(name = "case_reason_name_simple")
    private String caseReasonNameSimple;


    /**
     * 违则-格式化
     */
    @Column(name = "illegal_basis_format")
    private String illegalBasisFormat;
    /**
     * 违则详情-格式化
     */
    @Column(name = "illegal_detail_format")
    private String illegalDetailFormat;

    /**
     * 罚则-格式化
     */
    @Column(name = "punish_basis_format")
    private String punishBasisFormat;

    /**
     * 违则详情-格式化
     */
    @Column(name = "punish_detail_format")
    private String punishDetailFormat;


    /**
     * 事项分类标记事项分类标记(法定事项-1;赋权事项(通用事项-2；自选事项-3);委托事项-4)
     */
    @Column(name = "sx_type")
    private String sxType;

    /**
     * 委托部门编码
     */
    @Column(name = "client_org_code")
    private String clientOrgCode;

    /**
     * 委托部门名称
     */
    @Column(name = "client_org_name")
    private String clientOrgName;

    /**
     * 委托部门-区域编码
     */
    @Column(name = "area_code")
    private String areaCode;

    /**
     * 委托部门-所属条线
     */
    @Column(name = "client_line_code")
    private String clientLineCode;

    /**
     * 是否公安委托执法：1是  0否
     */
    @Column(name = "is_public_security")
    private String isPublicSecurity;

    /**
     * 公安委托事项代码
     */
    @Column(name = "public_security_item_code")
    private String publicSecurityItemCode;

    /**
     * 公安委托事项代码
     */
    @Column(name = "item_relation_code")
    private String itemRelationCode;

    /**
     * 公安委托执法的部门编码，如XXX公安局XX支队的部门编码
     */
    @Column(name = "client_dept_code")
    private String clientDeptCode;

    /**
     * 公安委托执法的部门名称，如XXX公安局XX支队
     */
    @Column(name = "client_dept_name")
    private String clientDeptName;

}